// 日期工具

import dayjs from 'dayjs';

/**
 * 格式化日期
 * @param date 日期
 * @param format 格式
 */
export const formatDate = (date: string | number | Date, format = 'YYYY-MM-DD'): string => {
  return dayjs(date).format(format);
};

/**
 * 格式化时间
 * @param date 日期
 * @param format 格式
 */
export const formatDateTime = (date: string | number | Date, format = 'YYYY-MM-DD HH:mm:ss'): string => {
  return dayjs(date).format(format);
};

/**
 * 获取开始时间
 * @param date 日期
 */
export const startOf = (date: string | number | Date, unit: dayjs.OpUnitType = 'day'): Date => {
  return dayjs(date).startOf(unit).toDate();
};

/**
 * 获取结束时间
 * @param date 日期
 */
export const endOf = (date: string | number | Date, unit: dayjs.OpUnitType = 'day'): Date => {
  return dayjs(date).endOf(unit).toDate();
};
